# 定义列表
list1 = [1,2,3,4,5]
# 可以支持索引取值
# 从左开始是0
# 从右开始是-1
# 0    1   2   3  4
# -5  -4  -3  -2 -1
# print(list1[0])
# print(list1[1])
# 步进
# print(list1[1:3:2])  # [2]
# 翻转
# print(list1[::-1])

# 遍历列表
# print(len(list1))
"""
for i in range(len(list1)): # range(5)
    #0 list1[0]
    #1
    #2
    #3
    #4
    print(f"当前索引值是：{i}，对应元素值是：{list1[i]}") 
    # print(list1[i])
"""
# 枚举值，遍历列表
# for index,value in enumerate(list1):
#     print(f"当前索引是：{index}，内容为：{value}")
"""
list2 = ['刘超','班长','超哥','刘哥','刘超哥','哥老','哥斯拉']
for a,b in enumerate(list2):
    print(f"当前索引是：{a}，内容为：{b}")
"""

# 列表的内置方法
list3 = [11,22]

# 追加一个元素
list3.append(33)
print(list3)

# 删除元素
list3.remove(11)
print(list3)

# 修改元素
list3[0] = '刘超'
print(list3)

# 追加另外一个列表
list4 = [44,55]
list3.extend(list4)
print(list3)

# 根据索引位置插入
list3.insert(0,'班长')
print(list3)

# 查看对应元素的索引值
print(list3.index('班长'))

# 查看一个元素在列表里出现的次数
print(list3.count('班长'))

# 根据索引删除某个元素的值
list3.pop(0)
print(list3)

#排序
list4 = [78,231,5234,6643,5323,531,5,123,12441,55512]
# list4.sort()        # 默认是由小到大进行排序
# print(list4)

# 排序，降序，reverse这个参数设置成True，就是降序
list4.sort(reverse=True)
print(list4)

# 列表推导式：用一行代码省去多行代码
print([i for i in range(5)])

# 生成一个10长度的随机数，随机数范围从1，100
import random
print([random.randint(1, 100) for i in range(10)])

"""
列表特点：
1、支持索引、支持切片
2、是可变的数据类型，可以原地进行增删改
"""


